package com.zpark.redis;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.util.Set;

/**
 * @PackageName: com.zpark.redis
 * @ClassName: RedisKey
 * @Description:
 * @author: RZS
 * @date: 2024/4/1  11:26
 */
public class RedisKey {
    public static void main(String[] args) {
        /**
         * redis键常用方法
         */
        // 获取redis
        Jedis jedis = new Jedis();
        // 获取连接池
        /*JedisPoolConfig poolConfig = new JedisPoolConfig();
        JedisPool pool = new JedisPool(poolConfig);
        Jedis jedis1 = pool.getResource();*/
        // 设置访问密码
        jedis.auth("123456");

        // 查询所有key
        Set<String> keys = jedis.keys("*");
        for (String key : keys) {
            System.out.println(key);
        }

        // 判断某一个key是否存在
        Boolean dc = jedis.exists("dc");
        System.out.println(dc);

        // 删除指定的key
        Long res = jedis.del("dc");
        System.out.println(res);

        // 设置key的过期时间，单位：秒
        Long aLong = jedis.expire("zs", 10);

        // 获取key剩余时间
        Long zs = jedis.ttl("zs");

        // 移除key的有效时间
        Long zs1 = jedis.persist("zs");

        // 获取key对应的value数据类型
        String zs2 = jedis.type("zs");
        System.out.println(zs2);

        // 清空当前数据库所有数据
        //String s = jedis.flushDB();
        // 清空所有数据的所有key
        //String s1 = jedis.flushAll();
    }
}
